#ifndef MOUVEMENT_H
#define MOUVEMENT_H

#include "../tool/vectorf.h"
#include "action.h"

class Mouvement : public Action
{
    public:

    int nbIteration;
    float distanceParcourue;
    float vitesse;

    Vectorf * sommetDepart;
    Vectorf * sommetArrive;
    Vectorf * vecteurDirecteur;
    Vectorf * position;

    float time;
    float interval;

    float acceleration;
    float vitesseMax;
    float distance;

    int end;

    Mouvement(Vectorf * aSommetDepart, Vectorf * aSommetArrive, float aTime, float aInterval, Vectorf * aPosition);
    virtual void Do();

};

class MoveConstant : public Action
{
    public :

    Vectorf * sommetDepart;
    Vectorf * sommetArrive;
    Vectorf * vecteurDirecteur;
    Vectorf * position;
    Vectorf * camera;

    float interval;
    int nbIteration;

    float vitesse;
    float elapsedTime;

    MoveConstant(Vectorf *aSommetDepart, Vectorf *aSommetArrive, float aInterval, float aVitesse, Vectorf *aPosition, Vectorf *aCamera);
    virtual void Do();
};

#endif // MOUVEMENT_H
